/*   
 * Copyright (c) 2010-2020 DMGIS Ltd. All Rights Reserved.   
 *   
 * This software is the confidential and proprietary information of   
 * DMGIS. You shall not disclose such Confidential Information   
 * and shall use it only in accordance with the terms of the agreements   
 * you entered into with DMGIS.   
 *   
 */     
package com.dmgis.qxfw.dataservice.pages.service;

import com.dmgis.qxfw.dataservice.businessservice.api.entity.xt.login;
import com.dmgis.qxfw.dataservice.pages.entity.Level1Permission;
import com.dmgis.qxfw.dataservice.pages.entity.Permission;
import com.dmgis.qxfw.dataservice.pages.entity.SysUser;
import com.github.pagehelper.PageInfo;

import java.util.ArrayList;
import java.util.List;
import java.util.Map;

public interface ILoginService {
	//益阳用户登录
	List<login> CheckLogin(String userName, String passWord);
	//农业局  农业大户
	List<login> CheckLoginNy(String userName, String passWord, String role);
    //信息员
    List<login> CheckLoginInfo(String userName, String passWord, String role);
    //协理员
	List<login> CheckLoginHelp(String userName, String passWord, String role);

	List<login> CheckLogin1(String userName, String passWord);

	PageInfo<SysUser> selectLikeUser(String userName, String useraccount,int pageNum, int pageSize)throws  Exception;

	PageInfo<SysUser> selectAllUser(int pageNum, int pageSize)throws Exception;

	int updateUserForId(String userName, String userAccount, String userLv, String id, String password, String unit)throws Exception;

	int deleteUserForId(String id)throws  Exception;

	int insertUserInfo(String userName, String userAccount, String userLv, String password, String unit)throws Exception;

	List<Permission> selectAllPermission(String type)throws Exception;


	int insertUserPermission(String userId, List<Integer> permissionIdList)throws Exception;

	List<Permission> selectHavePermission(String id)throws  Exception;

	ArrayList<Integer> selectPermission(String id,String type)throws Exception;

	int deleteUserPermissionForId(String userId, List<Integer> deletePermissionIdList)throws Exception;

	List<Permission> selectAllPermissionByType(String type)throws Exception;

	List<Permission> selectHavePermissionByType(String id)throws Exception;

	List<Permission> selectHavePermissionByApp(String id)throws Exception;

	List<Permission> selectHavePermissionBy(String id)throws Exception;

	List<SysUser> CheckLogin2(String userName, String passWord);
}
  